-
Notifications
You must be signed in to change notification settings - Fork 4
feat(application): Add option to summarize run describe. #414
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
3e986b0 to
394b89b
Compare
Codecov Report✅ All modified and coverable lines are covered by tests.
|
PR #414 Review: feat(application): Add option to summarize run describeExecutive SummaryStatus: ❌ BLOCKING ISSUES FOUND This PR adds a ✅ Strengths
🚫 BLOCKING ISSUES (Must Fix)1. Ruff Linting Failure (CRITICAL)Location: Issue: Complexity check violation - compound condition should use set membership # CURRENT (line 188):
if (state.value == RunState.TERMINATED or state.value == ItemState.TERMINATED) and termination_reason:
return f"{state.value} ({termination_reason})"Linting Error: Fix: Refactor to use set membership for cleaner comparison: # OPTION 1 (Recommended - Most Pythonic):
if state.value in {RunState.TERMINATED.value, ItemState.TERMINATED.value} and termination_reason:
return f"{state.value} ({termination_reason})"
# OPTION 2 (Alternative - Direct enum comparison):
if state in {RunState.TERMINATED, ItemState.TERMINATED} and termination_reason:
return f"{state.value} ({termination_reason})"Why This Matters: This is medical device software. Linting rules enforce code quality standards that prevent bugs.
Verify Fix: make lint💡 SUGGESTIONS (Non-Blocking)1. Help Text ImprovementLocation: # CURRENT:
help="Show only run and item status summary (external ID, state, error message)"
# SUGGESTION (more explicit about what's hidden):
help="Show concise status summary (omits artifact download URLs and metadata)"This makes it clearer what the flag does (omits verbose output) rather than what it shows. ✅ Architecture Compliance
🎯 Testing VerificationTest Markers Check# Verified: All tests have required markers
uv run pytest tests/aignostics/application/utils_test.py -m "not unit and not integration and not e2e" --collect-only
# Result: 61 collected / 61 deselected / 0 selected ✅Coverage Impact
📋 Required Actions Before MergeMUST FIX (Blocking)
RECOMMENDED (Non-Blocking)
🔍 Final Verification CommandsAfter fixing the linting issue, run: # Full validation pipeline
make lint && make test_unit
# Or the complete suite
make allExpected result: All checks pass ✅ 🎖️ Excellent Work On
Once the linting issue is fixed, this PR will be ready to merge. 🚀 Reviewed by: Claude Code (AI-powered code review) |
|
The core changes look good! Ready to go when the checks pass. |
Co-authored-by: Oliver Meyer <42039965+olivermeyer@users.noreply.github.com>
e43e09b to
8916868
Compare
|
olivermeyer
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good!
The failing test on MacOS runner is known as flaky; slight duplication in test code is not critical.


To facilitate overview of run progress for users, specially for runs with large numbers of items, add a
--sumarizeoption toapplication run describethat just outputs run status and item status + error message, if given.